package com.cpr.ams.service;

import com.cpr.ams.bean.BaseRole;
import com.cpr.ams.bean.extend.BaseRoleExtend;
import com.cpr.ams.exception.AmsException;

import java.util.List;

public interface IBaseRoleService {
    
    /** 
     * @Description: 授权 
     * @Param: [roleId, privilegeIds] 
     * @return: void

     */
    void authorization(int roleId, List<Integer> privilegeIds);
    
    /** 
     * @Description: 查询所有角色 
     * @Param: [] 
     * @return: java.util.List<com.cpr.ams.bean.BaseRole>

     */ 
    List<BaseRole> findAll();
    
    /** 
     * @Description: 查询角色级联权限
     * @Param: [] 
     * @return: java.util.List<com.cpr.ams.bean.extend.BaseRoleExtend>
     * @Author: GX Cui
     * @Date 11:39 下午 2021/4/11
     */ 
    List<BaseRoleExtend> cascadePrivilegeFindAll();
    
    /** 
     * @Description: 保存或更新角色信息 
     * @Param: [baseRole] 
     * @return: void
     * @Author: GX Cui
     * @Date 11:40 下午 2021/4/11
     */ 
    int saveOrUpdate(BaseRole baseRole) throws AmsException;
    
    /** 
     * @Description: 通过id删除角色信息 
     * @Param: [id] 
     * @return: void
     * @Author: GX Cui
     * @Date 11:40 下午 2021/4/11
     */ 
    void deleteById(int id) throws AmsException;
}
